package net.iceflow.dunsel.commons;

import java.util.EventObject;

/**
 * The root event for all events emitted by Dunsel.
 */
public class Event<T> extends EventObject {
    
    /**
     * Constructs a new Event instance.
     * @param source The client facade that generated the event
     */
    public Event(final T source) {
        super(source);
    }

    /**
     * Gets the object that originally triggered the event.
     * @return The ClientFacade on which the Event initially occurred.
     */
    public T getSourceClientFacade() {
        return (T) this.getSource();
    }
}
